The present invention relates to passive optical networks (PONs), especially to a PON whose optical network units (ONUs) transmit at different rates.
FIG. 1 shows the architecture of a generic PON 10. An optical line terminal (OLT) 12 is connected to several (typically between 32 and 128; only three are shown for clarity) ONUs 14 via an optical splitter 16. Downstream signals (OLT to ONU) are broadcast to all the ONUs. Encryption is used to prevent eavesdropping. Upstream signals (ONU to OLT) are combined using a multiple access protocol, usually a time division multiple access (TDMA) protocol.
The invention described herein is described in terms of an Ethernet PON (EPON). It will be apparent to those skilled in the art how to modify the description for other kinds of PONs. In an EPON, the ONUs send REPORT frames to the OLT to request permission to transmit upstream and the OLT replies with GATE frames that tell the OLTs when and how much to transmit. The OLT runs a dynamic bandwidth allocation (DBA) algorithm to control the upstream data transmission of the ONUs. To make the DBA implementation flexible, many OLTs run their DBA algorithms in software. To reduce the CPU power needed to implement the algorithm, some operations are done using dedicated hardware accelerators. These operations include:                Parsing REPORT frames        Formatting GATE frames        Building the upstream timeline        Allocation based on parsed REPORT information (optional)        Granting order (optional)        Round trip time (RTT) calculation        
The emerging IEEE802.3av (10G EPON) standard requires designing a new DBA algorithm that can handle upstream allocation of both 1G transmitting ONUs and 10G transmitting ONUs because the standard uses the same wavelength for both 10G upstream and 1G upstream, with TDMA separation. Two main issues arise:
1. The OLT optical transceiver is a dual mode transceiver. Switching back and forth between 1G receive mode and 10G receive mode requires some overhead.
2. In the same time period, a 10G ONU transmits ten times as much information as a 1G ONU. This has implications for the fairness of allocation between 1G ONUs and 10G ONUs.
The CPU processing time of the current DBA algorithm is considerable. This is because the algorithm needs to monitor the bandwidth request and the transmission rate of the ONUs and to make sure that the ONUs' service level agreement (SLA) is enforced. Furthermore, the algorithm must assure fairness among the ONUs. The algorithm does this by sorting the ONUs according to a fairness criterion. This sorting adds considerable processing time.
Under the EPON standard, an ONU is required to report only its queue occupancy. The EPON standard does not allow fragmentation of frames during ONU upstream transmission. This can result in utilization loss, because up to a maximum transmission unit (MTU) frame size (1538 bytes) might be unutilized per allocation. To overcome this problem, in an optional, more advanced reporting mode (“threshold mode”), the ONU also reports the number of whole frames in each queue under some configurable threshold and its total queue status. The value under threshold and the total value are multiples of a whole frame size. Each value is reported in a different set in the REPORT frame.
In threshold mode, the ONU also has a queue freezing mechanism. When the ONU generates a REPORT, the ONU freezes its queues, so that when a future allocation is given the ONU sends frames from its frozen queues before sending any new frames that arrived after the queue freezing. Thus, the DBA algorithm can allocate either the value below the threshold or the total value and so prevent fragmentation loss. As noted above, the DBA needs to monitor the transmitted rate of each ONU and needs to decide how much bandwidth to allocate to the ONU to enforce the ONU's SLA.